Statically Typed Document Transformation: An Xtatic Experience
نویسندگان
چکیده
XTATIC is a lightweight extension of C⋕ with native support for statically typed XML processing. It features XML trees as built-in values, a refined type system based on regular types à la XDUCE, and regular patterns for investigating and manipulating XML. We describe our experiences using XTATIC in a real-world application: a program for transforming XMLSPEC, a format used for authoring W3C technical reports, into HTML. Our implementation closely follows an existing one written in XSLT, facilitating comparison of the two languages and analysis of the costs and benets—both signicant—of rich static typing for XML-intensive code. Comments University of Pennsylvania Department of Computer and Information Science Technical Report No. MSCIS-05-21. This technical report is available at ScholarlyCommons: http://repository.upenn.edu/cis_reports/61 Statically Typed Document Transformation: An XTATIC Experience Vladimir Gapeyev François Garillot Benjamin C. Pierce Technical Report MS-CIS-05-21 Department of Computer and Information Science University of Pennsylvania
منابع مشابه
The XTATIC Experience
XTATIC is a lightweight extension of C# with native support for statically typed XML processing. It features XML trees as built-in values, a refined type system based on regular types in the style of XDUCE, and "tree grep"-style regular patterns for traversing and manipulating XML. Previous papers on XTATIC have reported results on a number of specific technical issues: basic theoretical proper...
متن کاملXML Goes Native: Run-Time Representations for Xtatic
Xtatic is an extension of C with native support for statically typed XML processing. It features XML trees as built-in values, “tree grep” pattern matching, and an XML-specific type system. An implementation ofXtatic must address a number of issues common to any language supporting a declarative style of XML processing (e.g., XQuery, XSLT, XDuce, CDuce, Xact, Xen, etc.). In particular, it must ...
متن کاملRUN, Xtatic, RUN: EFFICIENT IMPLEMENTATION OF AN OBJECT-ORIENTED LANGUAGE WITH REGULAR PATTERN MATCHING
RUN, Xtatic, RUN: EFFICIENT IMPLEMENTATION OF AN OBJECT-ORIENTED LANGUAGE WITH REGULAR PATTERN MATCHING Michael Y. Levin Benjamin C. Pierce Schema languages such as DTD, XML Schema, and Relax NG have been steadily growing in importance in the XML community. A schema language provides a mechanism for defining the type of XML documents; i.e., the set of constraints that specify the structure of X...
متن کاملRegular Object Types
Regular expression types have been proposed as a foundation for statically typed processing of XML and similar forms of tree-structured data. To date, however, regular expression types have been explored mainly in the setting of special-purpose languages (e.g., XDuce, CDuce, and XQuery) whose type systems were designed around regular expression types \from the ground up." The goal of the Xtatic...
متن کاملConstraining Polymorphism in Statically Typed Object-Oriented Languages
A major attraction of object-oriented programming languages is the promise of increased code reuse, especially through large class libraries implementing common abstract data types and algorithms. Unfortunately, the type systems of most widely used, statically typed object-oriented languages are unable to express the kinds of constrained polymorphism required to support the construction of such...
متن کامل